main(List<String> args) {
  // 方法对象
  var func = printHello;
  Function func1 = printHello;
  func();
  func1();

  List list = [1, 2, 3, 4];
  list.forEach(print);

  List list1 = ['h', 'e', 'l', 'l', 'o'];
  print(listTimes(list1, times));
}

void printHello() {
  print('Hello');
}

List listTimes(List list, String f(str)) {
  List l = [];
  for (var item in list) {
    l.add(f(item));
  }
  return l;
}

String times(str) {
  return str * 3;
}

/**
 * 方法可作为对象赋值给其他变量
 * 方法可作为参数传递给其他方法
 */
